﻿using System;
using System.Web;
using BusinessObject;
using Model;

namespace ViewLayer.Pages.Projetos
{
    public partial class CadastroProjeto : System.Web.UI.Page
    {
        User user;

        protected void Page_Load(object sender, EventArgs e)
        {
            user = (User)HttpContext.Current.Session["User"];
            if (user == null)
            {
                Response.Redirect("../Account/Login.aspx");
            }
        }

        protected void btnSave_Click(object sender, EventArgs e)
        {
            var inicio = DateTime.Parse(this.txtDataInicio.Text);
            var termino = DateTime.Parse(this.txtDataTermino.Text);

            if (Validations.GeneralValidation.GeneralValidation.validateText(txtName.Text) &&
                Validations.GeneralValidation.GeneralValidation.validateText(txtDataInicio.Text) &&
                Validations.GeneralValidation.GeneralValidation.validateText(txtDataTermino.Text) &&
                Validations.GeneralValidation.GeneralValidation.validateText(txtDescription.Text))
            {
                Project project = ProjectBO.Instance.InsertProject(this.txtName.Text, inicio, termino, this.txtDescription.Text, user);
                if (project != null)
                {
                    HttpContext.Current.Session.Add("Project", project);
                    Response.Redirect("../Projetos/InicioProjeto.aspx");
                }
            }            
            else
            {
                //Se falso mantém na página indicando os campos em conflito
                lblMessage.ForeColor = System.Drawing.Color.Red;
                lblMessage.Visible = true;
                lblMessage.Text = "Erro, projeto não pode ser criado.";
            }
        }
    }
}